《笑谈机智》第三卷 码农你来做! 0021 请帮我将这些csv汇聚成json

您所在的位置:网站首页 写入csv文件 r 《笑谈机智》第三卷 码农你来做! 0021 请帮我将这些csv汇聚成json

《笑谈机智》第三卷 码农你来做! 0021 请帮我将这些csv汇聚成json

2023-04-12 05:44| 来源: 网络整理| 查看: 265

  标签: #我 #AI #chatgpt #笑谈机智 #人工智能 #python #编码 #csv #json #自动化办公 #教程 #自动化

  迭代数:0000

场景模拟

  准确来说这是为了ai绘画提词编辑工具使用带来便利的专门一期,英文提词工具里有很多csv文件,要汇聚成一个json给编辑工具!

  ai绘画提词编辑工具详情请看:第三十五卷0004课

准备工作

  1.部署好python的环境!不会请回去看本卷0003课!

正式开始

  1.直接上需要的!

  ┳☺吟唱中的小松鼠:

写一个python代码,实现如下功能: 将当前文件夹内所有csv文件先转为utf-8编码再转为json,根据第一行的内容,形成格式例如: "uhd": { "text": "UHD", "lang_zh": "超高清", "subType": "quality", "dir": "质量" }, 无需根据文件名分组,最后汇总成为一个名为localPromptDefineMap.json的文件

  ┣∞AI:

import os import csv import json # 获取当前目录 current_dir = os.getcwd() # 将 CSV 文件转换为 JSON 格式 def csv_to_json(csv_file): with open(csv_file, "r", encoding="utf-8-sig") as f: reader = csv.DictReader(f) rows = list(reader) return rows # 将所有 CSV 文件转换为 JSON 格式 def convert_csv_to_json(folder_path): json_data = {} for filename in os.listdir(folder_path): if filename.endswith(".csv"): csv_file = os.path.join(folder_path, filename) key = filename[:-4] rows = csv_to_json(csv_file) json_data[key] = rows return json_data # 将 JSON 数据按要求格式化 def format_json(json_data): local_prompt_map = {} for filename, data in json_data.items(): for item in data: prompt_key = item["text"] prompt_value = { "text": item["text"], "lang_zh": item["lang_zh"], "subType": item["subType"], "dir": item["dir"], } local_prompt_map[prompt_key] = prompt_value return local_prompt_map # 将 JSON 数据写入文件 def write_json_to_file(json_data, file_path): with open(file_path, "w", encoding="utf-8") as f: json.dump(json_data, f, ensure_ascii=False, indent=2) # 将当前目录中所有 CSV 文件转换为 JSON 格式并写入文件 json_data = convert_csv_to_json(current_dir) formatted_data = format_json(json_data) write_json_to_file(formatted_data, "localPromptDefineMap.json")

  建立复制到py文件,放入dict文件夹测试成功!

  其实那个转utf-8没用!!!

  切记!

返回《笑谈机智》目录



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3